package com.ruoyi.srmcontract.mapper;


import java.util.List;

import com.ruoyi.srmcontract.domain.JacContracttemplate;

/**
 * 合同协议维护Mapper接口
 * 
 * @author yanggongxiao
 * @date 2020-07-31
 */
public interface JacContracttemplateMapper 
{
    /**
     * 查询合同协议维护
     * 
     * @param contracttemplateId 合同协议维护ID
     * @return 合同协议维护
     */
    public List<JacContracttemplate> selectJacContracttemplateById(Long contracttemplateId);

    /**
     * 查询合同协议维护列表
     * 
     * @param jacContracttemplate 合同协议维护
     * @return 合同协议维护集合
     */
    public List<JacContracttemplate> selectJacContracttemplateList(JacContracttemplate jacContracttemplate);
    
    
    /**
     * 修改合同模板状态
     * 
     * @param contracttemplateId 合同模板id
     * @return 状态
     */
    public String checkStatus(Long contracttemplateId);
    
    /**
     * 检查合同模板使用情况
     * 
     * @param contracttmpcode 合同模板code
     * @return 状态
     */
    public String checkTemUse(Long contracttemplateId);
    
    
    
    /**
     * 通过原合同代号复制合同
     * 
     * @param jacContracttemplate 合同协议
     * @return 插入条数
     */
    public int copyContractModel(JacContracttemplate jacContracttemplate);
    
    /**
     * 通过合同模板号查询合同协议详情
     * 
     * @param contracttmpcode  合同模板号
     * @return 合同协议详情
     */
    public String selectDetailByCode(String contracttmpcode);
    
    /**
     * 通过原合同代号复制合同
     * 
     * @param jacContracttemplate 合同协议
     * @return 插入条数
     */
    public int copyContractModelChange(JacContracttemplate jacContracttemplate);
    
    
    /**
     * 新增合同协议维护
     * 
     * @param jacContracttemplate 合同协议维护
     * @return 结果
     */
    public int insertJacContracttemplate(JacContracttemplate jacContracttemplate);

    /**
     * 修改合同协议维护
     * 
     * @param jacContracttemplate 合同协议维护
     * @return 结果
     */
    public int updateJacContracttemplate(JacContracttemplate jacContracttemplate);
    
    /**
     * 修改合同模板状态
     * 
     * @param jacContracttemplate 合同协议维护
     * @return 结果
     */
    public int updateTemStatus(JacContracttemplate jacContracttemplate);
    
    
    /**
     * 删除合同协议维护
     * 
     * @param contracttemplateId 合同协议维护ID
     * @return 结果
     */
    public int deleteJacContracttemplateById(Long contracttemplateId);

    /**
     * 批量删除合同协议维护
     * 
     * @param contracttemplateIds 需要删除的数据ID
     * @return 结果
     */
    public int deleteJacContracttemplateByIds(String[] contracttemplateIds);
}
